﻿using System;
using System.Collections.Generic;
using System.Web.UI.WebControls;
using RazakiControls;

public static class ExtensionsUI
{
    public static void InsertDefaultItem(this RazakiDropDownList razakiDropDownList)
    {
        razakiDropDownList.Items.Insert(0, new ListItem {Text = "انتخاب...", Value = UtilitiesBLL._DECLINE_ID.ToString()});
        razakiDropDownList.SelectedIndex = 0;
    }

    public static DateTime? GetGregorian(this RazakiCalendar razakiCalendar)
    {
        return UtilitiesBLL.GetGregorianDate(razakiCalendar.Text);
    }

    /// <summary>
    /// 
    /// </summary>
    /// <param name="razakiDropDownList"></param>
    /// <param name="datasource"></param>
    /// <param name="textField">
    /// مقدار پیش فرض زمانی کاربرد دارد که منبع از نوع دیکشتری باشد
    /// e.g. Dictionary string, int
    /// </param>
    /// <param name="valueField">
    /// /// مقدار پیش فرض زمانی کاربرد دارد که منبع از نوع دیکشتری باشد
    /// e.g. Dictionary string, int
    /// </param>
    public static void QuickBind(this RazakiDropDownList razakiDropDownList, object datasource, string textField = "Key",
                                 string valueField = "Value")
    {
        razakiDropDownList.DataSource = datasource;
        razakiDropDownList.DataTextField = textField;
        razakiDropDownList.DataValueField = valueField;
        razakiDropDownList.DataBind();
    }
}